package com.company.cloud.pay.modules.mgr.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.company.cloud.common.bean.LoginSimpleUserInfo;
import com.company.cloud.pay.modules.cache.model.PayChannelConfigModel;
import com.company.cloud.pay.modules.mgr.controller.req.PayChannelConfigQuery4PageParam;
import com.company.cloud.pay.modules.mgr.controller.req.PayChannelConfigSaveParam;
import com.company.cloud.pay.modules.mgr.controller.req.PayChannelConfigUpdateParam;
import com.company.cloud.pay.modules.mgr.controller.req.PayChannelConfigUpdateStateParam;

public interface PayChannelConfigMgrService {

    IPage<PayChannelConfigModel> query(PayChannelConfigQuery4PageParam params);

    PayChannelConfigModel save(PayChannelConfigSaveParam params, LoginSimpleUserInfo userInfo);

    PayChannelConfigModel update(PayChannelConfigUpdateParam params, LoginSimpleUserInfo userInfo);

    void updateState(PayChannelConfigUpdateStateParam params, LoginSimpleUserInfo userInfo);

    PayChannelConfigModel get(Integer id, boolean isCompany, LoginSimpleUserInfo userInfo);

    void del(Integer id, boolean isCompany, LoginSimpleUserInfo userInfo);

}
